package com.xjy.system.domain.vo;

import com.xjy.common.annotation.Excel;
import com.xjy.system.domain.bo.SysMaterialUpdateReturnBo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;


/**
 * 物料管理变更信息视图对象 sys_material_update
 *
 * @author zc
 * @date 2022-01-30
 */
@Data
@ApiModel("物料管理变更信息视图对象")
public class SysMaterialUpdateVo {

	private static final long serialVersionUID = 1L;

	/**
	 * $pkColumn.columnComment
	 */
	@ApiModelProperty("$pkColumn.columnComment")
	private Long id;

	/**
	 * 项目id
	 */
	@ApiModelProperty("项目id")
	private Long projId;

	/**
	 * 项目名称
	 */
	@Excel(name = "项目名称")
	private String projName;

	/**
	 * 物料id
	 */
//	@Excel(name = "物料id")
	@ApiModelProperty("物料id")
	private Long materialId;

	/**
	 * 变更单号
	 */
	@Excel(name = "变更单号")
	@ApiModelProperty("变更单号")
	private String materialNo;
	/**
	 * 物料名称
	 */
	@Excel(name = "物料名称")
	@ApiModelProperty("物料名称")
	private String materialName;

	/**
	 * 状态:0:入库,1:出库（借出）,2:归还,3:报损,4:售卖……
	 */
	@Excel(name = "状态", readConverterExp = "0=入库,1=出库,2=归还,3=报损,4=售卖")
	@ApiModelProperty("状态:0:入库,1:出库（借出）,2:归还,3:报损,4:售卖……")
	private String materialStatus;

	/**
	 * 关联借出单据单号
	 */
	@Excel(name = "单据编号")
	@ApiModelProperty("关联借出单据单号")
	private String materialAffiliatedOddNo;


	/**
	 * 预留字段1
	 */
	@ApiModelProperty("预留字段1")
	private String reserveOne;

	/**
	 * 预留字段2
	 */
	@ApiModelProperty("预留字段2")
	private String reserveTwo;

	/**
	 * 预留字段3
	 */
	@ApiModelProperty("预留字段3")
	private String reserveThree;

	/**
	 * 费用报销日期
	 */
	@Excel(name = "费用报销日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty("费用报销日期")
	private Date createTime;

	/**
	 * 删除状态 0. 正常 1. 删除
	 */
//	@Excel(name = "删除状态",readConverterExp = "0=正常,1=删除")
	@ApiModelProperty("删除状态 0. 正常 1. 删除")
	private Integer delFlag;


	/**
	 * 期初库存
	 */
	@Excel(name = "期初库存")
	@ApiModelProperty("期初库存")
	private Long startAmt;

	/**
	 * 变更数量
	 */
	@Excel(name = "变更数量")
	@ApiModelProperty("变更数量")
	private Long num;

	/**
	 * 账面库存
	 */
	@Excel(name = "账面库存")
	@ApiModelProperty("账面库存")
	private Long availableStock;

	/**
	 * 可用库存
	 */
	@Excel(name = "可用库存")
	@ApiModelProperty("可用库存")
	private Long initAmt;

	/**
	 * 修改时间
	 */
	@Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty("修改时间")
	private Date updateTime;
	/**
	 * 说明:简单的摘要信息，如：因物料老化报损
	 */
	@Excel(name = "摘要说明")
	@ApiModelProperty("说明:简单的摘要信息，如：因物料老化报损")
	private String remark;

	/**
	 * 经办人id
	 */
	@ApiModelProperty("经办人id")
	private Long handlerId;

	/**
	 * 经办人
	 */
	@Excel(name = "经办人")
	@ApiModelProperty("经办人")
	private String handler;


	/**
	 * 经办人部门
	 */
	@ApiModelProperty("经办人部门")
	private Long deptId;

	/**
	 * 经办人部门名称
	 */
	@Excel(name = "经办人部门")
	private String deptName;

	/**
	 * 经办人电话
	 */
	@Excel(name = "经办人电话")
	@ApiModelProperty("经办人电话")
	private String handlerPhone;

	/**
	 * 审核状态 0：未审核；1：审核（默认）
	 */
	@Excel(name = "审核状态", readConverterExp = "false=未审核,true=已审核,")
	private Boolean auditStatus;


	@ApiModelProperty("借出单据集合")
	private List<SysMaterialUpdateReturnBo> lendList;
}
